Python unittest+ddt+openpyxl+configparser
全部标签 我用安装了openpyxl$pipinstallopenpyxl当我尝试命令时fromopenpyxlimportWorkbook我明白了Traceback(mostrecentcalllast):File"",line1,infromopenpyxlimportWorkbookImportError:Nomodulenamed'openpyxl'我正在使用Python3.4和Ubuntu14.04,32位操作系统类型 最佳答案 如果你不使用conda,只需使用:pipinstallopenpyxl如果你使用conda,我会推荐:c
愚蠢的问题(肯定)简单的答案......我正在使用configparser从文件中读取一些字符串。当字符串有'%'符号(例如$%&)时,它会提示:ConfigParser.InterpolationSyntaxError:'%'后面必须跟'%'或'(',found:"%&'"有人熟悉这个吗?谢谢! 最佳答案 如果您不想替换环境变量,请使用RawConfigParser,而不是ConfigParser。 关于python-Configparser和带%的字符串,我们在StackOverfl
我正在尝试将数据写入具有多个换行符的单元格(我相信\n),生成的.xlsx已删除换行符。有没有办法保留这些换行符? 最佳答案 为openpyxl>=2更改样式的API。以下代码演示了现代API。fromopenpyxlimportWorkbookfromopenpyxl.stylesimportAlignmentwb=Workbook()ws=wb.active#wb.activereturnsaWorksheetobjectws['A1']="Line1\nLine2\nLine3"ws['A1'].alignment=Align
我的目录结构如下:my_program/foo.py__init__.py#emptyconf/config.cfg__init__.py在foo.py我有这个:importsys#sys.path.append('conf/')importConfigParserconfig=ConfigParser.ConfigParser()config.read('conf/config.cfg')在conf/__init__.py我有__all__=["config.cfg"]我在foo.py中遇到了这个错误,我可以通过给出完整路径来解决这个错误,但当我只放conf/config.cfg但我
importConfigParserconfig=ConfigParser.ConfigParser()config.read('test.ini')这就是我们在Python中读取配置文件的方式。但是如果“test.ini”文件不存在怎么办?为什么这个方法不抛出异常?如果文件不存在,如何让它抛出异常? 最佳答案 您也可以将其作为文件显式打开。try:withopen('test.ini')asf:config.read_file(f)exceptIOError:raiseMyError()编辑:针对python3更新。
为Python程序创build置文件,内置模块(ConfigParser)或独立项目(ConfigObj),或使用YAML数据序列化格式,哪个更好?我听说ConfigObj比ConfigParser更容易使用,尽管它不是内置库。我还读到PyYAML很容易使用,尽管YAML需要一些时间来使用。除了易于实现之外,哪个是创build置/配置文件的最佳选择? 最佳答案 这取决于您想在配置文件中存储什么以及如何使用它们如果您进行往返(yaml→code→yaml)并希望保留注释,则不能使用PyYAML或ConfigParser。如果您想保留k
我对ConfigParser的困扰仍在继续。它似乎不太支持Unicode。配置文件确实保存为UTF-8,但是当ConfigParser读取它时,它似乎被编码成其他东西。我认为它是latin-1并且我认为覆盖optionxform可能会有所帮助:--configfile.cfg--[rules]Häjsan=3☃=mysnowman--myapp.py--#-*-coding:utf-8-*-importConfigParserdef_optionxform(s):try:newstr=s.decode('latin-1')newstr=newstr.encode('utf-8')ret
我正在将OpenPyXL构建到一个应用程序中,该应用程序需要一个包含excel文件内容的字符串,以便它通过文件流写入。根据我对OpenPyXL源代码的调查,它看起来并不支持这种输出。有没有人有修改openpyxl以支持这一点的经验?或任何一般性建议/解决方法?谢谢。 最佳答案 jcollado的回答实际上是有效的,但在openpyxl.writer.excel中还有一个名为“save_virtual_workbook”的函数(遗憾的是尚未记录),它将获取您的工作簿并将工作簿作为字符串返回:fromopenpyxl.workbooki
尝试使用日志配置文件来实现TimedRotatinigFileHandler。只是因为某种原因不接受配置文件。任何建议表示赞赏。x.py:importloggingimportlogging.configimportlogging.handlerslogging.config.fileConfig("x.ini")MyLog=logging.getLogger('x')MyLog.debug('Starting')x.ini:[loggers]keys=root[logger_root]level=NOTSEThandlers=trfhand[handlers]keys=trfhand
如何在openpyxl中卡住整个标题行?到目前为止我只能卡住列:#onlyfreezethecolumn(freezevertically)cell=ws.cell('{}{}'.format(col,row_idx+1))worksheet.freeze_panes=cell 最佳答案 确保cell不在第一行-freeze_panes将卡住给定单元格上方的行和左侧的列。示例:fromopenpyxlimportWorkbookwb=Workbook()ws=wb.activec=ws['B2']ws.freeze_panes=cw